Control robot

ABSTRACT

Disclosed is a control robot having a machining tool comprising a rotatable tool for grinding at the distal end of the robot arm thereof so as to carry out grinding work with pressing the machining tool against the surface of a work to be machined under predetermined pressure, comprising a posture control shaft for controlling the posture of the machining tool provided at the robot arm; a rotation shaft of the rotatable tool; and arrangement in which the posture control shaft and the rotation shaft of the rotatable tool are respectively arranged in different axial directions.

This application is a divisional, of application Ser. No. 07/661,309,filed Feb. 27, 1991, now U.S. Pat. No. 5,265,195.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to a control robot which has a machiningtool comprising a rotatable tool for grinding at the distal end of therobot arm thereof so as to carry out grinding work with pressing themachining tool against the surface of a work to be machined underpredetermined pressure, and particularly relates to a force controlrobot for controlling a robot with detecting pressing force of themachining tool against work to be machined.

2. Description of the Prior Art

As an example of conventional control robots there is a robot which hasa machining tool, such as grinder, through a spring or damper at thedistal end of the robot arm thereof, and presses the machining toolagainst a work under predetermined pressure by means of urging force ofthe spring or damper.

However, in such a robot having so-called compliance by means of aspring or damper, though it is possible to weaken impact force appliedto the robot, or to machine the work with force limited in some rangewhen a great control force is generated on contact of the tool againstthe work, it is difficult to control the pressing force, so that it isimpossible to machine works with high accuracy. Moreover, such a robotis likely to be ill-balanced by the weight of the machining toolprovided at the robot arm thereof, so that it is difficult to controlthe pressing force at a constant value.

As another example of conventional control robots, there is a robotwhich has one or two shafts for controlling the pressing direction atthe robot arm.

However, in such a robot, since the one or two control shafts are addedanew, the arm portion becomes large in size, so that the weight of theportion is greatly increased.

Moreover, as still another example, there are various studies on acontrol robot which has a six-axes force/torque for detecting thepressing force at the robot arm so as to control the respective shaftsto adjust the force at a predetermined value. However, in such a case,since the respective shafts are driven so as to press the machining toolunder predetermined pressure in a predetermined direction, thecoordinate transformation becomes complex and a great amount ofcalculation must be required. Moreover, there must be also requiredtroublesome calculation for the weight compensation to the six-axesforce/torque sensor provided for the machining tool, which is changedwith postures of the robot. Accordingly, the trouble for such computeroperation should, be increased, moreover, an extremely high-speedcomputer is required. Besides, in this case, because the inertia forceof each shaft is much changed with postures of the robot and therigidity of the robot main body variously changes according to useconditions, it is difficult to control the pressing force with highaccuracy, therefore, such a robot can not be applied to variousmachining conditions and working postures.

As stated above, in the conventional control robots, it is difficult tocarry out the machining work with high accuracy. Moreover, to controlthe pressing force more precisely, it is necessary to add control shaftsfor the force control anew and an extremely great amount of calculationrequired therefor. Besides, the machining condition and working postureshould be limited in small ranges.

Moreover, in a force control robot having a six-axes force/torque-sensorbetween a machining tool, for example a grinder, and the robot arm so asto press the tool against a work with a predetermined force in anoptional direction, the force along each shaft and moment about eachshaft, or the synthesized force of these, each detected by the six-axesforce/torque sensor is so controlled as to be a predetermined value.

Namely, compliance control or hybrid control is carried out by directlydetecting the direction of force or moment and incorporating data on thedetected force or moment in a control loop.

However, in such a robot, because the weight of the machining toolattached at the distal end of the torque sensor is relatively large,when the tool is moved at high acceleration, the inertia force generatedby the acceleration should be detected by the torque sensor.

Moreover, by such a detection method by means of the torque sensor, itis impossible to discriminate between the pressing force and the inertiaforce.

Accordingly, in such construction of the above-mentioned control robot,it is difficult to measure only the pressing force applied to a workfrom the machining tool.

While, in such a conventional force detection method, even when the toolis not in contact with a work, a data on the inertia force generated bymovement of the tool and vibration of the arm is transferred to thecontrol system without discrimination from the pressing force. Moreover,since the inertia force is so large as or lager than the pressing force,it can not be ignored. If the inertia force is ignored on the machiningwork, it is impossible to carry out the work desirably.

Even though the vibration of tool is very weak, when the inertia forcegenerated thereby is transferred to the control system, the vibration islikely to be increased.

Accordingly, it is very difficult to increase the gain of the forcecontrol loop. Moreover, it is impossible to carry out control operationin good response, also it is difficult to realize high accuracymachining work.

Moreover, great amount of calculation shoud be always required for theoperation of six-axes force/torque sensor, which depends on the postureof machining tool.

Accordingly, troublesome computer operation be more increased.

As described above, in such a conventional control robot, because ofgeneration of the inertia force of the machining tool provided with thedistal end of the robot arm, it is difficult to correctly detect thepressing force applied to a work from the tool, moreover, it isimpossible to increase the gain of the force control loop. Therefore,the force control can not be carried out in good response, and it isdifficult to realize high accuracy machining work.

Moreover, it is also necessary to calculate the weight compentionrequired for the six-axes force/torque sensor.

While, in the conventional control robot, when the shape of a work to bemachined is known, it is possible to carry out machining work withpressing the tool along a normal of the work based on the shape and withalways setting the machining tool in a predetermined posturecorresponding to the work by changing the posture. However, when theshape of the work is not known in advance, since the robot has nofunction to judge which posture should be correct, it can not be appliedto such a case.

Moreover, even in case that the work shape is already known, the work toteach the robot the shape or to input data corresponding to the shape tothe control system should require more trouble as the shape becomes morecomplex.

While, though now still being studied, there is a proposition about arobot in which a grindstone in a special form and a special force sensorare incorporated in the machining tool so as to grind a work of unknownshape. The robot can not be applied to wide use, so that it is difficultto use the robot for general grinding works. Moreover, since it isnecessary to incorporate the grindstone of a special form and thespecial force sensor in the machining tool, a high production cost mustbe required.

Namely, the conventional force control robot or force control apparatuscan not be applied to a work of unknown shape to be machined, even ifpossible, an extremely large amount of trouble must be required forteaching the robot the shape of work or inputting the data.

SUMMARY OF THE INVENTION

The present invention was made to solve the above-mentioned problem ofthe prior art, therefore it is an object thereof to provide a controlrobot which has an easy structure, and can carry out easy control, so asto perform complex grind work with high accuracy.

It is another object of the present invention to provide a force controlrobot which can improve the response ability for the force control bycorrectly detecting the pressing force to a work from the machining toolwhich is provided at the distal end of the robot arm, and can improvethe machining accuracy and reduce the amount of calculation.

It is still another object of the present invention to provide a forcecontrol robot which does not require the shape of a work to be machinedin advance, and can machine a work of unknown shape with pressing themachining tool against the work along its normal line and with alwayskeeping the tool in a predetermined posture to the work by suitablychanging the posture thereof, so as to carry out the machining work withan ordinary tool and a general sensor.

To achieve the above-mentioned objects, a first feature of the presentinvention is a control robot which has a machining tool comprising arotatable tool for grinding at the distal end of the robot arm thereofso as to carry out grinding work with pressing the machining toolagainst the surface of a work to be machined, wherein

each posture control shaft for controlling the posture of the robot armand a rotation shaft of the machining tool are respectively arranged indifferent axial directions, and the pressing direction of the machiningtool is substantially the same as the rotating direction of the posturecontrol shaft.

Moreover, the control robot has a robot control apparatus which canreproduce teaching data obtained with respect to all the robot controlshafts on grinding work, and a grind control apparatus for controllingthe pressing force of the machining tool by driving one of the posturecontrol shafts on grinding work, wherein operation of one of the posturecontrol shafts is controlled by switching operation from the robotcontrol apparatus to the grind control appratus.

In the control robot, since each posture control shaft for controllingthe posture of the robot arm is arranged in a different direction fromthat of the rotation shaft of the machining tool, it is not necessary toadd new shaft for control by controlling the posture control shafts withsuitable torque T. Moreover, the same effect can be obtained also byarranging the rotating direction of the posture shafts and the pressingdirection of the machining tool to be substantially the same. While,when the pressing force of the machining tool is expressed by F, and thedistance from the center of the posture control shafts to the machiningpoint on a work is designated by r, the control is effected so as toestablish the relation expressed by T=F×r.

When one of the posture control shafts for torque control is used ongrinding work based on teaching data corresponding to teaching points onthe surface of a work obtained by operating all the robot shaftsincluding the posture control shafts, the pressing force of themachining tool against the work can be suitably controlled bycontrolling the torque applied to each posture control shaft with movingthe machining point of the tool along a fixed machining orbit byreproducing the teaching work.

Moreover, when the machining tool is well-balanced to the posturecontrol shafts by using a spring or counter weight, it becomesunnecessary to compensate the posture of the tool, moreover, the changeof pressing force caused by the change of the posture can be prevented.

The torque control of the posture control shaft referred to hereincludes torque control used by switching operation together withpositional control, or general compliance control or so-called hybridcontrol.

A second feature of the present invention is a force control robot whichdetects pressing force to be applied from a machining tool provided atthe distal end of the robot arm to a work to be machined, then controlsthe detected pressing force to be taget pressing force, in which areprovided

detection means for detecting counterforce against the pressing forceapplied to the machining tool, and arithmetical operation means forcalculating moment about the center of gravity of the machining tool byapparently shifting a position at which the counterforce is detected bythe detection means to the center of gravity of the machining tool so asto calculate the pressing force to be applied from the machining tool tothe work.

In the force control robot corresponding to the second feature, by theoperation means, there can be obtained correct pressing force appliedfrom the machining tool to the work based on the moment about thegravity of the machining tool.

Generally, the machining tool is pressed against the work in a fixedposture and a fixed direction, moreover, the area where the machiningtool contacts with the work is substantially decided.

Therefore, the pressing force F can be obtained by the followingequation with the moment MG about the center of gravity of the machiningtool to be detected by the detection means and the vertical distance rfrom the center of gravity:

    F=M.sub.α /r                                         (1)

While, since the pressing force is controlled, even when some inertiaforce acts on the machining tool, that is, even when acceleration α isgenerated in the pressing direction of the machining tool, the momentM.sub.α about the center of gravity is completely not influenced by theinertia force mα (m is the mass of the machining tool).

Accordingly, since it is possible to detect the pressing force correctlywithout any influence of the inertia force, the work can be machinedwith high accuracy by the machining tool based on the pressing forcecorrectly detected.

Thus, there can be provided a force control robot which has excellentresponse ability for the force control and can carry out high accuracycontrol operation.

Since the pressing force is detected based on the moment M.sub.α aboutthe center gravity of the machining tool, the weight compensation forthe machining tool is unnecessary even when the posture of robot isvariously changed.

Moreover, a third feature of the present invention is a force controlrobot which detects pressing force to be applied from a machining toolprovided at the distal end of the robot arm to a work to be machined,then controls the detected pressing force to be taget pressing force, inwhich are provided detection means for detecting counterforce of thepressing force of the machining tool, and compensation means forobtaining moment about the center of gravity of the machining tool fromthe detection result of the detection means and further obtainingcounter force of the pressing force from the moment so as to compensatethe detection result.

Moreover, the compensation means arranges both of the position of thecenter of gravity in the machining tool and the detection positionthereof to be the same by attaching a counterweight to the machiningtool.

Accordingly, the detection result can be compensated by the compensationmeans based on the pressing force applied from the machining tool to thework.

As the result, since it becomes possible to detect correct pressingforce, it also becomes possible to press the machining tool against thework based on the correctly detected pressing force.

Moreover, by attaching the counterweight to the machining tool, thedetected pressing force of the machining tool can be compensated.

Next, a fourth feature of the present invention is a control apparatusfor controlling a force control robot, which detects pressing force tobe applied from a machining tool provided at the distal end of the robotarm to a work to be machined, then controls the detected pressing forceto be target pressing force, in which are provided

detection means for detecting counterforce of the pressing force of themachining tool, posture change means for changing the posture of themachine tool so as not to change the detection result from apredetermined value, and driving means for pressing and moving themachining tool in the direction along which the tool is fixed.

According to the control apparatus, the center of rotation of theposture control for the machining tool is exsistent in the vicinity ofthe contact point between the machining tool and the work to bemachined.

Moreover, the posture of the machining tool is changed by the posturechange means so as not to change the detection result of the detectionmeans from a predetermined value.

Furthermore, the machining tool is pressed and moved by the drivingmeans in the direction along which the machining tool is fixed.

Besides, because the center of rotation of the posture control for themachining tool is arranged in the vicinity of the contact point betweenthe tool and the work to be machined, the posture control is carried outround the contact portion.

While, a fifth feature of the present invention is a force controlapparatus for controlling a robot, which detects pressing force to beapplied from a machining tool provided at the distal end of the robotarm to a work to be machined, then controls the detected pressing forceto be target pressing force, in which are provided

first shape memory means for memorizing the shape of the work from themovement orbit of the machining tool, second shape memory means formemorizing the finished shape of the work, and operation means forcarrying out arithmetical operation of a target position and a targetposture of the machining tool based on the shapes memorized in both ofthe first and the second shape memory means.

Namely, in this force control apparatus, a shape of the work to bemachined is memorized in the first shape memory means based on themovement orbit of the machining tool. While, a finished shape of thework is memorized in the second shape memory means. Moreover, a targetposition and a target posture are obtained by means of the operationmeans based on the shapes which memorized in both of the first and thesecond shape memory means.

Generally, in a force control robot, when some machining process isgiven to a work, the pressing or moving direction of the machining tooland its posture to the work are approximately decided. For example, ingrinding work by means of a usual disk grinder (so-called anglegrinder), the pressing direction is a normal of the work, and the movingdirection is a tangent thereof. While, with respect to the posture ofthe machining tool to the work to be machined, the pitch angle is 20° to30° and the roll angle is 90°.

Accordingly, on the grinding work, with respect to a work whose shape isalready known, the operational direction and posture of the forcecontrol robot are controlled by the force control apparatus relating tothe first to the third feature of the present invention.

However, with respect to a work whose shape is not known, it isimpossible to decide the posture and the like.

To solve this problem, this control robot is controlled by the forcecontrol apparatus of the above-described fouth feature of the presentinvention. Namely, the pressing and the moving direction of themachining tool are not decided based on the work, but are decided basedon the machining tool itself. Namely, the robot is so controlled thatthe machining tool is moved along the surface of the work by moving thetool in a predermined pressing direction, further by moving it in thevertical direction to the pressing force.

However, the above means is insufficient to carry out the controloperation for intentionally changing the posture of the machining toolso as to keep it in a constant state with respect to the work whoseshape is not known.

In the force control apparatus of the fifth feature, for example, incase that the pressing direction is not in accord with the normaldirection of the work, and the machining tool is always moved in apredetermined pressing direction and is also moved in the verticaldirection to the pressing direction, the pressing force and the momentgenerated thereby are largely changed as compared with the case in whichthe pressing direction coincides with the normal direction. To thecontrary, in case that the pressing direction coincides with the normal,the pressing force and the moment caused thereby are not changed solargely.

Accordingly, by detecting the change and adjusting the posture of themachining tool so that the change can be ignored, the pressing directioncan be arranged to coincide with the normal of the work.

Then, if the posture of the machining tool can be changed so as not togenerate the change of the pressing force or the like, even though thesurface of the work is curved three-dimensionally, the posture of themachining tool to the work can be kept in a constant state. Therefore,the machining tool can be moved in accordance with the surface shape ofthe work with being kept pressed with a predetermined force against thework even when the shape thereof is not known.

Moreover, by memorizing machining data on the work whose shape is notknown, it becomes possible to recognize the shape of a new work, andalso to finish the surface thereof in any desired shape.

These and other objects, features and advantages of the presentinvention will be more apparent from the following description of apreferred embodiment, taken in conjunction with the accompanyingdrawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a perspective view of a control robot which relates to a firstembodiment of the present invention;

FIG. 2 is an explanatory diagram to show the robot shown in FIG. 1 withdiagrammatical signs;

FIGS. 3 and 4 are a plane view and a side view to respectively show anattachment manner of a machining tool in the control robot shown in FIG.1;

FIG. 5 is a block diagram of a control apparatus in the control robotshown in FIG. 1;

FIGS. 6 to 8 are explanatory diagrams to respectively show workingstates of the control robot shown in FIG. 1;

FIG. 9 is a perspective view of a second embodiment of a force controlrobot according to the present invention;

FIG. 10 is a side view to show a machining tool of the force controlrobot shown in FIG. 9;

FIG. 11 is an explanatory diagram to show the robot shown in FIG. 1 withdiagrammatical signs;

FIG. 12 is a block diagram to show construction of a force controlapparatus shown in FIG. 9;

FIG. 13a is a maching tool as first modification of the secondembodiment;

FIG. 13b is a side view of the machining tool shown in FIG. 13a;

FIG. 14a is a plane view to show a machining tool as second modificationof the second embodiment;

FIG. 14b is a side view of the machining tool shown in FIG. 14a;

FIG. 14c is a front view of the machining tool shown in FIG. 14a;

FIG. 15a is a plane view to show a gripper as third modification of thesecond embodiment;

FIG. 15b is a side view of the gripper shown in FIG. 15a;

FIGS. 16 to 21 are graphs to respectively show experimental resultsconcerning pressing force in the second embodiment;

FIGS. 22, 22a and 22b are block diagrams showing a force controlapparatus as fourth modification of the second embodiment;

FIG. 23 is a block diagram to show a part of a force control apparatusas fifth modification of the second embodiment;

FIG. 24 is a side view of a machining tool of the fourth modification;

FIG. 25 is a perspective view to show a work of planar structure;

FIG. 26a is a side view to show a machining tool;

FIG. 26b is a side view of a machining tool whose roll angle is shiftedby 90° with respect to a work;

FIG. 27 is a side view to show a cross section of a work;

FIGS. 28 to 30 show experimental results respectively, and FIG. 28 is adiagram to show relation between time and grinder pressing force;

FIG. 29 is a diagram to show relation between time and a pitch angle;and

FIG. 30 is a diagram to show relation between time and an orbit of thedistal portion of a grindstone.

DETAILED DESCRIPTION OF THE EMBODIMENTS

FIG. 1 is a perspective view of a six-shaft control robot as firstembodiment of the present invention, which shown in the cylindricalcoordinate system. FIG. 2 is an explanatory diagram for showing therobot shown in FIG. 1 with diagrammatical signs.

In these diagrams, a grinder robot 1 has six operational shafts θ, Z, R,α, γ, β. Among these shafts, the three shafts α, β, γ which provided atthe distal portion of the robot arm function as posture control shaftsfor the robot 1, respectively. Incidentally, these three shafts α, β, γrespectively comprise rotation shafts for controlling the posture of thecontrol robot 1. In this embodiment, the axial direction of the shaft βfor controlling the posture of the robot arm is arranged so as not to bethe same as the rotation shaft of a rotation tool (grindstone) 2.Moreover, the rotation direction of the shaft β is arranged so as tocoincide with the pressing direction of the rotation tool (grindstone) 2to a work, and a grinder (machining tool) 4 is attached to the distalend of the shaft β through a six-shaft torque sensor 3.

In more detail, the control robot 1 has standard three shafts θ, Z, R ofthe cylindrical coordinate system, and at the distal portion of theshaft R are respectively provided the first rotation shaft (rotationshaft of the robot arm) α, the swinging shaft γ, and the second rotationshaft (posture control shaft) β. Moreover, the grinder 4 is attached tothe distal end of the rotation shaft β so that the pressing direction ofa distal tool 2 of the grinder 4 to a work coincides with the rotatingdirection of the rotation shaft β. Incidentally, the weight balancebetween the grinder 4 and the tool 2 is suitably adjusted by means of aspring or counterweight.

Accordingly, the grinder robot 1 can move the rotot arm to any givenspace position by operation of the respective standard shafts θ, Z, R.Moreover, by operating the distal three shafts α, β, γ with operation ofthese shaft θ, Z, R, the grinder 4 can be moved any desired positionwith keeping the posture in a constant state with respect to the work.Namely, the second rotation shaft β controls the position and theposture of the grinder 4.

FIGS. 3 and 4 are a plane view and a side view to respectively show thegrinder 4 attached to the robot arm shown in FIG. 1.

As shown in these diagrams, the grinder 4 is attached to the shaft βthrough the sensor 3 so as to rotate round the center of gravity (grindcenteral point) 0 of the grinder 4 about the shaft β and to make thepressing direction of the grind stone 2 to the work W at a point P bethe same as the rotation direction of the shaft β. Moreover, the shaft βis so arranged to make 90° with respect to the rotation axis x of thegrind stone 2.

When the grind work is carried out by means of custruction shown inFIGS. 3 and 4, the grind central point 0 is moved along a movement orbitwhich is parallel to the surface of the work W. At the time, when thedistance between the grind central point 0 and the machining point P isr, the torque about the shaft β is T, and the pressing force to the workW is F, the relation designated by T=F×r is establised. Incidentally,because r is always existent whenever the shaft β is arranged about anaxis different from the rotation axis x, machining the work W can becertainly carried out in accordance with the formula T=F×r.

As shown in FIG. 4, when the grindstone 2 is a disk grinder, it isdifficult to make the pressing direction of the grindstone 2 by means ofthe rotation of shaft β be completely the same as the vertical directionto the work W. However, this problem can be compensated with ease bysome arithmetical operation technique.

FIG. 5 is a block diagram to show an embodiment of a control apparatusfor the control robot shown in FIG. 1.

In the same drawing, a control apparatus 5 for the grinder robot 1comprises a robot control unit 8 comprising a teaching control unit 6and a robot position deciding unit 7, and a grinder control unit 9.

The robot control unit 8 obtains teachings at the teacing control unit6, then drives servo motors M.sub.θ, M_(Z), M_(R), Mα, M.sub.γ, M.sub.βrespectively corresponding to each shaft based on teaching datamemorized by a teaching data memory section 7A. Moreover, each servomotor is provided with a rotary encoder E for detecting each shaftposition. Besides, a speed detector is also provided therein.

Between the robot position deciding unit 7 and the servo motor M.sub.βfor driving the second shaft β, a switch circuit 10 is provided.

On the other hand, with respect to the grinder control unit 9, theabove-described six-shaft torque sensor 3 and switch circuit 10 areconnected.

The switch circuit 10 is so constructed as to connect the servo motorM.sub.β to the robot position deciding unit 7 on teaching, while to thegrinder control unit 9 on griding work.

Accordingly, on teaching, the control apparatus 5 can carry out ordinaryteaching work by using the six shafts θ, Z, R, α, γ, β so as to make thememory section 7A memorize teaching data and reproduce them whennecessary. While, on grinding work, the apparatus 5 can carry out torquecontrol as described below by switching the servo motor M.sub.β to thegrinder control unit 9.

As one example of torque control, there is a method of controlling thetorque T about the shaft β shown in FIG. 4 to be constant by controllingthe current to be applied to the motor M.sub.β based on a correspondingpart of data detected by the six-axes force/torque sensor 3. However,since the machining accuracy can not be necessarily guaranteed enoughonly by such constant torque control, it is also possible to usecompliance control for generating torque proportional to the deviationon the basis of a predetermined position of the machining point P.

Moreover, it is also possible to provide some positional threshold valueso that the constant torque control is used when the deviation is belowthe threshold value, while the compliance control is used when itexceeds the value. Moreover, it is possible to use hybrid control.

FIG. 6 shows an explanatory diagram of fettling or surface finishingwork.

As shown in the same drawing, this control apparatus can be applied tosuch fettling or surface finishing work by changing the grind stone 2into another 2A with a shape suitable for this work. In the exampleshown in FIG. 6, the grindstone 2A is formed in a small cylindricalshape, and rotates round the rotation axis x so that the cylindersurface is in contact with an edge portion of the work W to be machined.

When such a grindstone 2A as shown in the drawing is used, the pressingdirection of the grindstone 2A by means of the shaft β can coincide witha direction in which the machining to the work W can be effected mostefficiently, moreover, the shaft β can be arranged about an axisdifferent from the rotation axis x. Incidentally, in the same drawing,the proceeding direction of the grindstone 2A is vertical to the drawingpaper.

Moreover, as shown in FIG. 7, when the machine surface of the work W iscurved, it is possible to operate the robot control apparatus 8 so thatthe grind central point 0 moves on an orbit L along the curved surfaceand to carry out the torque control concerning the shaft β.

Also as shown in FIG. 8, in case that the work is grinded in an optionalshape, an orbit of a tool standard point 0' is made into an orbit 6which is substantially parallel to an target shape, and the positionsand speeds of the other shafts than the shaft β are respectivelycontrolled so that the grinder 4 gets a target posture with respect tothe work W. While, with respect to the shaft β, for example, by carringout the compliance control the work can be finished into an optionalshape. Otherwise, it is also possible to carry out the torque controluntill the posture reaches a suitable angle with respect to a targertangle, thereafter, the torque control is switched into the positionalcontrol so as not to grind the work excessively.

As stated above, in the grinder robot of the first embodiment, since thetorque control is carried out by one shaft, i.e. the control shaft β,provided at the distal portion of the robot arm, the inertia andrigidity of the shaft β are not changed by the posture thereof.Therefore, it is possible to always carry out the torque control underthe same condition. Moreover, since the inertia force caused by theshaft β is small and the characteristic frequency thereof is high ascompared with the three standard shafts, it becomes possible to improvethe response ability to the work irrespectively of vibration of theother shafts caused by the positional and speed control. Accordingly,the machining work including grinding work can be carried out with highaccuracy.

As compared with a case where the force control or compliance control iscarried out with respect to a plurality of or all of control shafts,only one shaft is controlled in this case. Therefore, even when carriedout at a high level, the control of this case does not require complexand a large amount of calculation, so that the calculation amount can belargely reduced.

Incidentally, though the six-axes force/torque sensor 3 is used astorque sensor in the first embodiment, when there is almost nopossibility that considerably large force is generated in anotherdirection than the machining direction, it is possible to provide onlyone torque sensor for detecting the torque of shaft β. In this case,since only one sensor is provided in the system, the size of robot armcan be much reduced, moreover, it is also possible to provide the sensorin a joint of the arm. Besides, the cost can be much reduced.

Moreover, in the first embodiment, the present invention is appliedbetween the shaft β and the grinder 4, however, it is also possible toapply it between the shaft α and the grinder 4, or the shaft γ and thegrinder 4.

Furthermore, in the above embodiment, the torque on machining isdirectly detected by the torque sensor, it is also possible toindirectly detect the torque by means of the current value of grinder 4,rotation number of grindstone 2 or current value of the driving motor.

Besides, in the above embodiment, the present invention is applied tothe robot of cylindrical coordinate system with the standard shafts θ,Z, R, however, it is also possible to apply it to a robot of rectangularcoordinate system, polar coordinate system or multi-joint type.

As stated above, according to the first embodiment, there can beprovided a control robot which has easy construction, and can controlrobot work, for example, complex grinding work with ease.

Next, a second embodiment of a force control robot related to thepresent invention will be described.

FIG. 9 shows a force control robot 21 of the second embodiment. Theforce control robot 21 is a six-shaft robot of cylindrical coordinatesystem, and has six operational shafts Z, R, θ, α, β, γ. Moreover, atthe distal portion 23 of the force control robot 21, a grinder 25 isattached as machining tool for grinding a work 27 shown in FIG. 10.

Between the arm 29 of the force control robot 21 and the grinder 25, asix-shaft force sensor 31 is provided. Further, between the six-shaftforce sensor 31 and the grinder 25, a rubber damper 33 for cutting offhigh frequency vibration of the grinder 25 is disposed.

While, as shown in FIG. 10, the grinder 25 disposed at the arm distalportion 23 rotates a disk grindstone 35 with a motor 37 to grind thesurface of work 27. In this case, the grindstone 35 is inclined by apredetermined angle with respect to the surface of work 27, and movesthereon.

Incidentally, in FIG. 10, there are respectively provided a coordinatesystem Σ_(C) comprising the normal direction Z_(C) to the work 27,movement direction X_(C) of the grinder 25 and the lateral directionY_(C) of the grinder 25, which is along the surface of work 27; a sensorcoordinate system Σ_(S) and a grinder coordinate system Σ_(G) comprisingparallel shift of Σ_(S) to the center of gravity of the grinder 25.Moreover, in FIG. 10, the center of gravity of the grinder 25 isdesignated by OG and the distance from the contact portion between thegrindstone 35 and the work surface to the center O_(G) of gravity isexpressed by r.

When the surface of work 27 is subjected to grinding, generally, thegrinder 25 is pressed against the work 27 in the normal direction Z_(C)with being inclined to the work 27 at a predetermined contact angle.

Accordingly, the relation of counterforce F_(CZ) against the pressingforce of the grinder 25, moment M_(GY) about the center O_(G) (in thiscase Y_(G)) of gravity detected by the sensor 31, and vertical directionr from the center O_(G) of gravity to F_(CZ) is expressed by thefollowing formula:

    M.sub.GY =F.sub.CZ ×r                                (2)

Namely, by detecting the moment M_(GY) about the center O_(G) ofgravity, the counterforce F_(CZ) agaist the pressing force from thegrinder 25 to the work 27 can be calculated based on the formula (2).

Next, a force control apparatus 39 for controlling the force controlrobot 21 is explained. FIG. 12 is a block diagram to show constructionof the force control apparatus 39.

In the force control apparatus 39, there are provided a target pressingforce output section 43 for outputting target pressing force to adriving coordinate converter when the target pressing fource to beapplied from the grinder 25 to the work 27 is inputted from a computer41, a target position output section 47 for outputting a target positionwhen the target position is inputted from an operation section 45 suchas joy stick, and a target posture position output section 51 foroutputting a target posture position when the target posture position isinputted from an operation section 49.

Namely, in the force control apparatus 39, a target pressing forceoutput signal is inputted from the target pressing force output section43, while, a target position signal is inputted from the target positionoutput section 47, moreover, a target posture position signal isoutputted from the target posture position output section 51. Besides, acoordinate converter 53 for outputting a target angle θ_(id) of eachjoint to a servo driver and a motor is also provided therein.

Furthermore, a coorinate converter 55 for obtaining moment about thecenter of gravity of the grinder 25 from force signals on directions ofthe six shafts detected by the six-shaft sensor 31, then outputting apredetermined pressing force based on the moment about the center ofgravity.

In detecting the moment about the center of gravity of the grinder 25,the original point O_(S) of the six-shaft sensor 31 can be apparentlymoved to the center O_(G) of gravity of the grinder 25 by coordinatetransformation based on offset between the original point O_(S) ofsensor 31 and the center O_(G) of the gravity of the grinder 25 in therespective shaft directions, and force applied in the respective shaftdirections and detected by the sensor, and moment about the respectiveshafts. In this case, the moment M_(GY) about the center O_(G) ofgravity can be expressed as follows by using factors M_(SY), F_(SZ),F_(SX), Z_(GS), X_(GS) :

    M.sub.GY =M.sub.SY +F.sub.SZ ·X.sub.GS -F.sub.SX ·Z.sub.GS(3)

wherein, M_(SY), F_(SZ), F_(SX) respectively designate moment about theY axis in the sensor coordinate system, and force in the Z axis and theX axis direction, and Z_(GS), X_(GS) respectively designate distancesbetween the sensor origin and the center O_(G) of gravity of the grinder25 in the Z axis and the X axis direction. Incidentally, these attachedsigns should be changed by construction of the coordinate system.

Moreover, the moment about the other axes can be obtained as follows inthe same manner:

    M.sub.GX =M.sub.SX +F.sub.SY ·Z.sub.GS -F.sub.SZ ·Y.sub.GS(4)

    M.sub.GZ =M.sub.SZ +F.sub.SX ·Y.sub.GS -F.sub.SY ·X.sub.GS(5)

When the surface of work 27 is uniformly grinded by pressing the grinder25 against the work 27 in the normal direction thereof at apredetermined force, it is necessary to move the grinder 25 along thesurface of the work 27.

In this case, a work coordinate system Σ_(C) along the surface of work27 is determined, and a target position Z_(CD) is given in the directionZ_(C) so that the pressing force F_(CZ) in the normal direction of thework 27 detected by the force torque sensor coincides with targetpressing force F_(CZd) outputted from the target pressing force outputsection 43. Namely, this relation can be expressed as follows:

    Z.sub.cd(n) =K.sub.f (F.sub.czd -F.sub.cz)+Z.sub.cd(n-1)   (6)

wherein Z_(cd)(n-1) is a target position of the previous sampling.Naturally, F_(cz) shown here is detected from the moment applied aboutthe center O_(G) of gravity of the grinder 25.

With respect to the directions X_(C), Y_(C) along the work 27, thetarget position is given by joy stick or other suitable calculationmethods, while to posture factors α_(C), β_(C), γ_(C) of the grinder 25,it is obtained so as to keep a predetermined angle to the work 27.

Accordingly, when the detected pressing force does not satisfy thetarget pressing force, a new target position is given to the work 27again until it coincides with the traget pressing force.

While, with respect to the other directions, when positional control iscompleted, the grinder 25 is moved in parallel with the pressingdirection thereof.

When target positions X_(cd), Y_(cd) along the surface of work 27 arealready fixed, the pressing can be carried out with keeping theposition. Moreover, it also possible to move the grinder 25 at anoptional speed along the surface of work 27 by giving the targetpositions X_(cd), Y_(cd) by means of suitable joy stick or calculation.

Moreover, target posture values a α_(cd), β_(cd), γ_(cd) of the grinder25 are given so that the grinder 25 keeps a constant posture to thework. If the work is in a planar shape, α_(cd), β_(cd), γ_(cd) areconstant, and if in a curved shape, α_(cd), β_(cd), γ_(cd) should berespectively changed in accordance with the surface shape.

For example, when the grinding work is manually carried out, byarranging the coordinate axes of joy stick to be corresponding to thecoodinate system of the work along its surface, the grinding work can becarried out with pressing the grinder against the work at apredetermined force only by operating two-dimensional joy stick evenwhen the surface of the work is variously curved.

While, in case of automatic grinding work, it is possible to grind anoptional area of the work 27 by preparing orbits X_(C), Y_(C) on thesurface of work 27.

Next, operation of the second embodiment is explained. First, targetpressing force is outputted from the computer 41 to the target pressingforce output section 43. Then, the target pressing force F_(CZd)outputted from the target pressing force output section 43 is comparedwith counterforce F_(CZ) outputted from the coodinate converter 55 by anadder. At the time, when there is some difference between thecounterforce F_(CZ) and the target pressing force F_(CZd), the targetposition Z_(Cd) is changed so as to make the difference negligible.

In this case, to the coordinate converter 55, output from the six-shaftforce sensor 31, that is, moment about the center O_(G) of gravitydetected by the sensor 31 is inputted. To detect the moment about thecenter OG of gravity, the coodinate transformation is carried out inaccordance with the formulas (3) to (5) with offset data between theorigin O_(S) of the six-shaft force sensor 31 and the center of gravityof the grinder 25 with respect to the respective shafts, force datadetected by the six-shaft sensor 31 to the respective shafts, and momentdata to the respective shafts. As the result, the origin of thesix-shaft force sensor 31 can be apparently moved to the center O_(G) ofgravity of the grinder 25.

Then, the pressing force is outputted to the driving coordnate converter53 so as to machine the work 27 by the grinder 25 at the target pressingforce. Based on the target pressing force, the servo drive operrates themotor in a not-shown joint drive mechanism, so as to press the grinder25 against the work 27.

Accordingly, it becomes possible to press the grinder 25 against thework 27 at the perdetermined target pressing force, thereby improvingthe response ability concerning force control. Moreover, the machiningaccuracy of the grinder 25 against the work 27 can be much improved.

Next, experimental results on the second embodiment are explained withreference to FIGS. 16 and 17. In the experiment, influence on theinertia force which differently detected was investigated.

FIG. 16 is a graph to show the counterforce F_(CZ) corresponding to thepressing force and detected by the six-shaft force sensor 31 when stepinput concerning the vertical speed is given in the non-contact state inthe force control robot shown in FIG. 10.

Therefore, since in the non-contact state, the pressing force does noteffect from the grinder 25, however, by the step input concerning thevertical speed, inertia force is generated from the grinder 25. FIG. 16shows a case where the force effecting in the vertical direction isdirectly detected. Of course, in this case, the force applied in thevertical direction is directly detected, thus the inertia force of thegrinder 25 generated by the speed step input is also detected.

Actually, in case that pressing force of about 1 to 2 kg is detected,the inertia force detected together therewith is far larger than thepressing force.

While, FIG. 17 shows a case where the pressing force is detected basedon moment effecting about the origin of the sensor. As shown in the samedrawing, since some deviation is existent between the origin O_(S) ofthe sensor and the center O_(G) of gravity of the grinder, the rotationinertia generated by the deviation is detected to some extent. However,the influence of inertia force is very small as compared with the caseshown in FIG. 16.

Moreover, according to the second embodiment, as shown in FIG. 18, sincethe origin of the sensor 31 coincides with the center of gravity of thegrinder 25, almost no influence of inertia force is seen.

FIG. 18 shows a case where the moment about the center O_(G) of gravityof the grinder 5 is detected based on the formula (3) without using acounterweight 37 which will be described below (see FIG. 13). Also inthis case, the influence of inertia force can not be seen, moreover,since no counterweight is provided, the weight of the grinder portion isvery small.

FIGS. 20 and 21 respectively show results of grinding work in which thepressing force is detected by the detection methods in accordance withcases in FIGS. 16 and 18, and the grinding work is respectively carriedout with moving the center of gravity parallel to the surface of work soas to make the pressing force coincide with the target pressing force.Moreover, in the respective cases shown in FIGS. 20 and 21, the changeof pressing force from the non-contact state to a state where thepressing force reaches 1 Kg is shown. In both of the cases, though theforce gain is increased in such extent that oscillation is notgenerated, the gain in the case shown in FIG. 21 is larger by 20 timesthan that in the case in FIG. 20. Namely, it is clearly seen that thecase in FIG. 21 is far more excellent in the response ability. On thecontrary, according to the response ability substantially equivalent tothe case shown in FIG. 20, even by a little inclination of the work, thegrinder can not sufficiently follow the surface of the work. To thecontrary, according to the response ability equivalent to the case inFIG. 21, even if the machining surface is inclined to some extent, thegrinder can move correctly along the surface of the work.

Next, a first modification of the second embodiment of the presentinvention is described with reference to FIGS. 13a and 13b. In the firstmodification, a counterweight 57 is attached to the grinder 25 at thedistal portion 23 of the robot arm, and the Z_(S) axis coincides withthe Z_(G) axis so as to directly detect the moment M_(GZ) about thecenter O_(G) of gravity of the grinder 25. Otherwise, without attachingthe counterweight, the center O_(G) of gravity of the grinder 25 isdirectly in accord with the Z_(S) shaft.

Namely, in the above second embodiment shown in FIG. 10, the center ofgravity of the grinder 25 is located on the side of grindstone withrespect to the Z_(S) shaft. Therefore, by attaching the counter weight57 on the rear side of the motor 37 with respect to the Z_(S) shaft, thecenter of gravity of the grinder 25 is shifted in the rear directionalong the motor shaft, so that it becomes possible to make the Z_(S)axis coincide with the Z_(G) axis by providing the counter weight 57 ofa suitable weight.

According to the first modification, F_(CZ) is determined as acounterforce of the pressing force from the grinder 25 to the work 27,therefore, it is necessary to arrange the moment M_(GZ) about the centerof gravity of the grinder in accord with the counterforce direction.

On the other hand, when moment is generated about a plurality axis, theaxes must be in accord with the original point when occasion demands.

In such a manner, if the axis of the sensor coodinate system can bearranged to be in accord with the axis of the coordinate system of thegrinder 25 by adjusting the attachment position of the counterweight 57,the moment about the center of gravity of the grinder 25 can be directlydetected.

In this case, when a general six-shaft sensor is used, the attachmentmethod of the grinder 25 is limited, further the total weight isincreased by the attachment of counterweight. However, it becomespossible to carry out the control operation without the toublesomearithmetical operation for coordinate transformation with respect to theparallel movement of the origin in the sensor system.

As stated above, also in the first modification, since the moment aboutthe center of gravity of the grinder 25 is detected, the inertia forcegenerated by the transfer of the ginder 25 or by the vibration of thearm does not influence the force control.

Incidentally, the vibration of arm is generated along the movementdirection of grinder 25, which is parallel to the work surface, and ishardly generated along the rotation direction thereof. Accordingly,there is almost no case in which the moment about the center of gravityof grinder 25 is vibrated.

Accordingly, the pressing force of grinder 25 can be detected with highaccuracy, and the control response ability can be improved.

Next, an experimental result about the first embodiment is explainedwith reference to FIG. 19.

FIG. 19 shows a case in which weight balancing is carried out withproviding the counter weight 57 with respect to the origin of sensorsystem. Moreover, form the same drawing, the influence of the inertiacan be hardly seen.

Next, a second modification of the second embodiment is explained withreference to FIGS. 14a to 14c. As compared with the second embodimentand the first modification respectively designed for grinding work, thesecond modification shows a case where a flat plate as a work is cut.

As shown in FIG. 14b, a grindstone 35 of the grinder 25 provided at thedistal portion 23 of robot arm serves as a cutter of a flat plate 59. Inthe cutting work, though the working condition depends on the cuttingdepth or transfer direction, the grind stone 35 receives counterforce Ffrom the plate 59. The force F can be divided a force component F_(X) inthe direction along the thickness of plate 59 and another forcecomponent F_(GY) in the direction along the surface of plate 59.

Since the vertical distance r from the center of gravity of the grinder25 to the grindstone 35 is constant, the pressing force can be obtainedfrom the moment about the axes X_(G), Y_(G) of the grinder 25.

On the other hand, the counterforce F can be calculated as follows:##EQU1##

Also in this case, there is no influence of the inertia force.Therefore, the response ability in the cutting work can be improved aswell as in case of the above-mentioned grinding work.

Incidentally, in the respective examples, the present invention isapplied to a robot of cylindrical coordinate system, however, it shouldbe understood that this invention can be applied not only to the robotof this type, but also to robots of rectangular coordinate system, polarcoordinate system and multi-joint coordinate system.

Moreover, in the respective examples, though the six-shaft force sensoris used as pressing force detection sensor, if the force to be detectedis limited to only one direction, it is also possible to use a fourcesensor for detecting force in the only one direction.

Accordingly, it becomes possible to construct the control system in asmall size at a low cot. Moreover, by using the six-shaft force sensor,emergency stop operation becomes possible when the pressing forcebecomes excessive.

Next, a third modification of the second embodiment is explained withreference to FIGS. 15a and 15b. The third modification is a case whereforce which acts on a gripper is detected by the present invention.

In this case, respective force components F_(GX), F_(GY), F_(GZ) whichact on a pripper portion can be detected by the following famulas (8) to(10) when respective vertical distance components X_(GP), Y_(GP), Z_(GP)from the point P of action of the gripper portion to the origin ofsensor system, moment components M_(GX), M_(GZ), M_(GY) about the centerof gravity of the gripper, and one of the above force components, forexample F_(GZ), are given.

Namely, the relation formulas of the moment components M_(GX), M_(GZ),M_(GY) with respect to the force components F_(GX), F_(GY), F_(GZ) andthe distance components X_(GP), Y_(GP), Z_(GP) are as followsrespectively:

    M.sub.GX =F.sub.GZ ·Y.sub.GP -F.sub.GY ·Z.sub.GP(8)

    M.sub.GY =F.sub.GX ·Z.sub.GP -F.sub.GZ ·X.sub.GP(9)

    M.sub.GZ =F.sub.GY ·X.sub.GP -F.sub.GX ·Y.sub.GP(10)

Incidentally, these force components F_(GX), F_(GY), F_(GZ) can not beobtained only by data on M_(GX), M_(GZ), M_(GY) and X_(GP), Y_(GP),Z_(GP), and to know these factors, another data concerning these forcecomponents must be required.

In this case, when the force component F_(GZ) is given as another datarequired for the calculation of these force components, the influence ofinertia force generated in the axis direction corresponding to F_(GZ)must be considered.

However, in the case of robot arm, the direction in which the vibrationof robot arm is remarkably generated is generally known. Therefore, thegeneral force which acts on the gripper can be detected by directlydetecting force components with respect to axes on which the vibrationcan be negligible, further by removing the influence of inertia forcefrom the force component, by detecting the moment about the center ofgravity of the gripper, with respect to the axis on which the vibtationcan not be neglected.

With respect to the direction in which the influence of inertia force isnegligible, it depends on the posture of the robot arm. Accordingly, tocarry out the detection with efficiently avoiding the influence of theinertia force, it is necessary not only to shift the origin of sensorsystem to the center of gripper, but also to suitably rotate thecoordinate axes.

Next, a fourth modification of the second embodiment is explained withreference to FIG. 22.

The fourth modification is another example of force control apparatusfor controlling a force control robot as shown in FIGS. 9 to 11 forcarrying out machining a work 27 whose shape is not known.

Incidentally, in this case, a coordinate system Σ_(W) comprisingrotating the grinder coordinate system Σ_(G) in FIG. 10 by angle φ_(GW)about the axis Y_(G) is considered as new grinder coordinate system.While, as sensor coordinate system, the sensor coordinate system Σ_(S)in FIG. 10 is directly used. Moreover, O_(G) designates the center ofgravity of a grinder 25, and r is a distance from the contact portionbetween a grindstone 35 and a work 27 to the center O_(G) of gravity.Besides, φ_(CG) is a pitch angle between the grinder 25 and the work 27.Furthermore, as absolute coordinate system, a coordinate system Σ_(o)fixed at the base portion is considered in FIG. 11.

Moreover, Z_(W) is considered as the pressing direction from the grinder25 to the work 27, X_(W) as the proceeding direction of the grinder 25,and Y_(W) as the lateral transfer direction of the grinder 25. Namely,these directions are decided when the posture of the grinder 25 isdecided.

Accordingly, when Z_(W) is parallel to Z_(C), the grinder 25 presses thegrindstone 35 against the work 27 in the normal direction of the work27. Moreover, by moving the grinder 25 in the directions X_(W) andY_(W), the grinder 25 can move along the tangent direction of the work27. Moreover, φ_(GW) designates a target pitch angle between the grinder25 and the work 27.

On grinding work, if the posture of the grinder 25 can be controlled sothat Z_(W) and Z_(C) are always parallel to each other based on thedetection data from the six-shaft sensor 31, it is possible to grind thework, whose shape is unknown or curved, with keeping the posture ofgrinder 25 in a constant state against the work 27 at optional pressingforce.

As shown in FIG. 22, in a force control apparatus 6 of the fourthmodification of the second embodiment, from a host comuter 63 arerespectively inputted target moment M_(GXd) of the grinder 25, targetpressing force F_(WZd), target yawing angle φ_(GD) and target correctionvalues ΔX_(Wd), ΔY_(Wd). Incidentally, in case of manual operation,φ_(GD), ΔX_(Wd), ΔY_(Wd) are inputted from an operation section such asjoy stick.

Then, data detected by the six-shaft force sensor 31 are subjected tocoordinate transformation by the force sensor coordinate converter 65with respect to the center O_(G) of gravity of the grinder 25.Subsequenty, each target roll angle φ_(Gd) on lateral transfer, onproceeding or on stop, is calculated based on F_(WZ) or M_(GX). Then, agrinder target pitch angle φ_(Gd) is calculated from F_(WZ).Incidentally, the product term is not shown in the drawing. Then, fromthe target roll angle φ_(Gd), target pitch angle φ_(Gd), and the targetyawing angle φ_(Gd) having been already set, target posture factorsα_(Od), β_(Od), γ_(Od) are respectively obtained by expression, forexample, in accordance with the Euler anglular display in the absolutecoordinate system fixed at the base of the force control robot 21 inFIG. 11.

In more detail, the target roll angle and the target pitch angle can notbe prepared at the same time by first coordinate transformation. Thus,for example, the target posture factors are prepared in consideration ofonly correction to the roll direction, then these factors are furtherprepared with respect to the correction of pitch direction. In such amanner, there can be prepared the target posture factors which satisfythe correction on both of the roll direction and the pitch direction. Ifrequired, the correction on the yawing angle is also considered.

Thereafter, another target correction value ΔZ_(Wd) in the pressingdirection is calculated form F_(WZ). Moreover, from ΔZ_(Wd), andΔX_(Wd), ΔY_(Wd) having been already set, the target posture factorsα_(Od), β_(Od), γ_(Od) are decided by a grinder position coordinateconverter 69, then the target positions X_(Od), Y_(Od), Z_(Od) based onthe absolute coordinate system are respectively calculated from thesetarget posture factors a α_(Od), β_(Od), γ_(Od).

Moreover, from the target positions X_(Od), Y_(Od), Z_(Od) and thetarget posture factors α_(Od), β_(Od), γ_(Od), target angles ofrespective joint shafts comprising six shafts are calculated by adriving coordinate converter 51. Then, the respective shafts are drivenin accordance with these driving conditions.

Next, a method of controlling the force control robot 21 by using theforce control apparatus 61 is explained.

First, to control the pressing direction Z_(W), each moment about therespective shafts is obtained in accordance with the formulas (2) to (5)related to the second embodiment. Then, the control should be carriedout so that the couterforce F_(WZ) to the work obtained by the formula(2) be the same as the target pressing force F_(WZd).

Namely, in the control, the target position in the pressing direction ofthe grinder 25 is corrected so as to make the counterforce F_(WZ) thesame as the target pressing force F_(WZd).

Incidentally, the correction value ΔZ_(Wd) in the pressing direction isgiven by the following formula:

    ΔZ.sub.Wd =K.sub.fZ (F.sub.WZd -F.sub.WZ)            (11)

where K_(fZ) is the force gain.

The correction on the target position in the direction Z_(W) is carriedout for each sample based on the formula (11). For example, whendetected force is less than target force, the target postion of wrok 27is shited in the direction opposite to the pressing direction.

While, the control of the proceeding direction X_(W) and the lateraltransfer direction Y_(W) of the grinder 25 is carried out by preparingthe respective target shift values ΔX_(Wd), ΔY_(Wd) in the respectivedirections X_(W). Y_(W) in advance, for example with a computer, foreach sampling. As the result, it becomes possible to grind any optionalarea of the work 27.

Otherwise, it becomes also possible to prepare these shift values withjoy stick so as to carry out the grinding work manually.

Moreover, these correction values ΔX_(Wd), ΔY_(Wd), ΔZ_(Wd) respectivelyin the pressing, the proceeding and the lateral transfer direction aresubjected to coordinate transformation based on the target posturefactors of the grinder 25 so as to prepare the target position of thegrinder 25.

Next, the control method of the grinder 25 is explained. First, thecontrol method concerning the pitch direction (φ_(G) about the axisY_(G)) of the grinder 25 is explained. When the grinder 25 is moved in astate where the pitch angle φ_(CG), of the grinder 25 to the work 27 isin accord with φ_(GW), there is almost no error occurrence in thepressing force controlled by the formula (11).

However, as shown in FIG. 24, when the grinder 25 is progressed (in thedirection - X_(W)) in a state where φ_(CG) is larger than φ_(GW), thegrinder 25 is urged in the pressing direction (desinated by an arrow inthe drawing). Thus, the pressing force is increased. Therefore, when thegrinder 25 is transferred at a constant speed, the difference betweenthe pressing force F_(WZ) and the target pressing force F_(WZd) ismaintained all the time of grinding work.

Conversely, when the grinder 25 is progressed (in the direction - X_(W))in a state where φ_(CG) is smaller than φ_(GW), the grinder moves in thedetachment direction. Thus, the pressing force is reduced. On the otherhand, when the grinder is regressed, the result is reverse.

Accordingly, by changing the pitch angle φ_(G) of the grinder 25 so asto make the pressing force F_(WZ) be the target pressing force F_(WZd),the pitch angle between the grinder 25 and the work 27 can be kept atφ_(GW).

Namely, the following formula can be established in the same manner asin the formula (11):

    φ.sub.Gd(n) =K.sub.f (F.sub.WZd -F.sub.WZ)+φ.sub.Gd(n-1)(12)

wherein K_(f) is gain, and φ_(Gd)(n-1) means the target pitch anglebefore one sampling.

Incidentally, when the grinder is rotated about the shaft Y_(G) withfixing the center O_(G) of gravity, the pressing force is changed withchange of the posture. Moreover, the pitch direction is rotated roundthe contact point between the grindstone 15 and the work 27.

Accordingly, the pitch angle with respect to the work 27 is changed bythe formula (11), but does not affect the control of the pressingdirection.

Actually, since the grinder 25 is progressed or regressed to the work27, it is not always correct that the grinder 25 can move on the surfaceof the work 27 smoothly whenever it is rotated round the contact point.

Namely, in case of the progress, the grinder 25 can be smoothly movedalong the surface of the work 27 by shifting the center of rotationtoward the grinder 25, while in case of the regress, the center isshifted toward the contact point to this end. Accordingly, the center ofrotation is suitably shifted to get the smooth operation.

On the other hand, in case of the grinding work to a flat surface, thepitch angle φ_(GC) can be arranged at φ_(GW) by the formula (12).However, when the gain K_(f)φ can not be increased so that the grindercan not be smoothly moved on the surface of the work, it is possible toconstruct the formula (12) not only with the first term concerning thecomparision control but also with product terms as follows:

    φ.sub.Gd(n) =K.sub.fφ (F.sub.WZd -F.sub.Wd)+K.sub.fφ1 Σ(F.sub.WZd -F.sub.WZ)+φ.sub.Gd(n-1)            (13)

In any case, the control is carried out so as to make the pitch angleφ_(CG) be the same as φ_(GW).

According to the formula (12) or (13), even if the surface of the workis circularly curved or successively changed with various curvatures,since the control is carried out so that the pitch angle φ_(CG) isalways in accord with φ_(GW) when the grinder is moved in the prceedingdirection, the grinder can be smoothly moved on the surface of the work.

Incidentally, the rotation diretion of grinder should be changed whenthe movement mode in the proceeding direction is changed, for example,from the progress mode to the regress mode. Therefore, the signsincluded in the formula (12) or (13) should be suitably changed inaccordance with the movement mode. Namely, by combination of both of thecontrol methods concerning the pitch angle and the pressing direction ofthe grinder 25, it becomes possible to carry out such grinding work asshown in an arrow designated by reference character 1 in FIG. 25 withoutany teaching on the change of curvature. However, it is necessary to setin advance the data concerning the surface for giving theabove-described roll angle and yawing angle between the grinder 25 andthe work 27.

Next, the control method of the roll direction of the grinder 25 (shaftθ about the shaft X_(G)) is explained.

When the grinder 25 is moved in the lateral direction or the Y_(W)direction, the control is carried out in completely the same manner asin case of the control of pitch direction. Moreover, for smooth grindingwork, the roll angle between the grinder 25 to the work should be set at90°, that is, the shaft X_(W) be in accord with the shaft X_(C). Namely,when the grinder 25 is moved in the lateral direction in the state wherethe roll angle is 90°, error occurrence is hardly seen in the control inaccordance with the formula (12).

On the other hand, when the grinder 25 is moved in the lateral directionin a state where the roll angle is shifted from 90° to some extent,similarly to the case of the pitch direction control, since the grinder25 moves in the pressing or the reverse direction thereof, the pressingforce is changed.

Accordingly, it is necessary to keep the roll angle between the grinder25 and the work 27 at 90° by controlling the roll angle θ_(G) of thegrinder 25 itself in accordance with the following formulas so that thepressing force F_(WZ) is in accord with the target pressing forceF_(WD).

    θ.sub.Gd(n) =K.sub.fθ (F.sub.WZd -F.sub.WZ)+θ.sub.Gd(n-1)(14),

    or

    θ.sub.Gd(n) =K.sub.fθ (F.sub.WZd -F.sub.Wd)+K.sub.fθ1 Σ(F.sub.WZd -F.sub.WZ)+θ.sub.Gd(n-1)          (15)

wherein the formula (15) further contains product terms as compared withthe formula (14).

When the grinder 25 is moved in accordance with the formula (14) or(15), the roll angle between the grinder 25 and the work 27 can bealways kept at 90°.

To prevent overgrinding on the lateral transfer, it is possible to setthe target pressing force on the lateral transfer to be smaller than thetarget pressing force on proceeding.

Accordingly, by combination of the control method of the roll angle andthe control method of the proceeding direction, it becomes possible tocarry out such grinding work as shown in an arrow designated byreference character 2 in FIG. 25 without any teaching on the change ofcurvature. However, it is necessary to set in advance the dataconcerning the surface for giving the above-described pitch angle andyawing angle between the grinder 25 and the work 27.

By the above-described method, it is impossible to correct the rollangle when the grinder 25 is moved in the pressing direction or isstopped. Therefore, the control method of roll angle in the proceedingmode in the pressing direction or stop mode is explained hereinafter.

For example, as shown in FIG. 26, when the roll angle is shifted by 90°against the work 27, Z_(W) is not in accord with Z_(C). Therefore, thepressing force effects in the inclining direction so that the momentM_(GX) about the axis X_(G) is changed. When grinding work is notcarried out, since the moment M_(GX) does not effect even when thepressing is carried out in the state where the roll angle is shifted by90° against the work 27, the target moment M_(GXd) is 0. While, when thegrinding work is carried out, this torque is not 0 because of thegrinding resistance or motor torque. Moreover, the torque varies withkinds of grindstone or work and the pressing force. Accordingly, bysetting the target roll angle so as to make the moment M_(GX) be thetarget moment M_(GXd) when the roll angle is shifted by 90° with respectto the work 27, the roll angle can be controlled when the grinder 25 ismoved in the pressing direction or is in the stop mode.

Namely, the control condition can be expressed as follows:

    θ.sub.Gd(n) =K.sub.fθ2 (M.sub.GXd -M.sub.GX)+θ.sub.Gd(n-1)(15)

In case of this formula, it is necessary to obtain the target momentM_(GXd) in advance from the detection on pressing, however, and also toinvestigate in advance the grinding conditions such as kind of work,kind of grindstone, pressing force, proceeding speed and lateraltransfer pitch.

Similarly to the rotation in the pitch direction, the rotation in theroll direction is carried out around the contact point between thegrindstone and the work.

Next, the control method of the yawing direction (φ_(G) : about the axisX_(G)) is explained.

When the yawing angle is changed, the proceeding angle of the grinder 25is changed. Accordingly, the angle is set in advance in accordance withan area to be ground. During grinding work, it is not necessary tochange the yawing angle, however, when the grind angle or grind area ischanged, the angle should be suitably changed.

With respect to the posture control method, though the method ofrotation about the respective axes in the coordinate system Σ_(G) hasbeen already explained, the posture can be controlled also by rotationabout the respective axes of the coordinate system Σ_(w).

As stated above, according to the control methods about the pressingdirection of grinder, proceeding direction in the pressing direction,lateral transfer direction, roll pitch, and yawing angle, even when thesurface of work is changed three-dimensionally, the grinding work can becarried out with optional pressing force with automatically changing theposture so that the grinder posture to the work be constant without anydetailed teaching on the shape.

For example, in case of grinding for a work with an indeterminate shapeunder special working environment, even when the work shape and the workposition to robot can not be set in advance, if approximate relationbetween them and the grinder posture are given through a monitor or thelike, the work can be carried out with ease and high efficience.

On the other hand, in manual operation by means of joy stick, if anapproximate initial posture is given, the grinding work can be carriedout with automatically controlling the pressing force and the grinderposture only by two-dimensional joy stick operation. Moreover, bysetting the proceeding and the lateral movement patterns of the grinder25 in advance, it becomes possible to automatically grind an optionalarea of the work with ease.

Next, there is provided an example of experimental results on grindingwork which carried out according to the above control method without anyteachings about the work shape. In the experiment, a work having a crosssection as shown in FIG. 27 is subjected to grinding work along an arrowdesignated in the same drawing under conditions: 1.2 kgf of targetpressing force FWZd, 2.5 cm/s of grinder movement speed ΔX_(WZ), 25° oftarget pitch angle φ_(GW) with respect to the work, and 40° of initialpitch angle of grinder to work (therefore, the error is 15°). FIGS. 28to 30 respectively show the pressing force of grinder with respect totime, the pitch angle (from the horizontal plane) to time, anddisplacement to time for showing an orbit of the distal end ofgrindstone calculated from joint angles of the six shafts. From thesedrawings, it is clearly seen that tile grinder posture is changed so asto control the pitch angle to be 25° so that the pressing force becomesconstant.

Next, a fifth modification of the second embodiment is explained withreference to FIG. 23. The fifth modification shows a force controlapparatus for effecting grinding work with pressing the grinder agaist awork whose shape is unknown. Moreover, this modification shows a casewhere a work of unknown shape is finished into an optional shape. In ablock diagram shown in FIG. 23, only a portion which is different fromthe force control apparatus in FIG. 22 is shown.

In the initial state, since the work shape is not confirmed by the forcecontrol robot, the grinding work is carried out according to the thirdmodification of the force control apparatus with pressing the grinderagainst the work of unknown shape. At the time, the actual grinderposition and grinder posture X_(O), Y_(O), Z_(O), α_(O), β_(O), γ_(O)based on the absolute coordinate system are calculated by an inversecoordinate converter 73 with respect to joint angles of the six shafts,then the respective data are memorized by a work shape data memory 55.As the result, the force control robot can recognize the work shape.

From data given from a computer 63 to a work finished shape data memory79, and also from data of the work shape data memory 75, respectivetarget grinder position and target grinder posture X_(OP), Y_(OP),Z_(OP), α_(OP), β_(OP), γ_(OP) based on the absolute coordinate systemare prepared by a grinder target position and target posture preparationapparatus 75.

Then, the respective data are also inputted to a driving coordinateconverter 71 so as to drive the respective shafts. Thus, the work 27 ofunkown shape can be finished into an optional shape.

Incidentally, the grinder target position and target posture preparationapparatus 79 may provide force control in the normal direction of thework 27 and a target position in the movement direction corresponding tothe movement speed when the finished shape data and the initiallymomorized data are different from one another, or may perform positionalcontrol when the difference is small or negligible. In any case, sincethe work shape data are already known this time, it is also possible touse a conventional control method.

Moreover, in case that a special tool is not used for the work, theapparatus can be used as means for confirming unknown shapes.

As application examples of the present invention, a robot of cylindricalcoordinate system is used in each modification of the embodiment,however, the application is not limited to the robot of this type, andalso can be applied to a robot of rectangular coordinate type, polarcoordinate type and multi-joint coordinate type.

Moreover, in each embodiment, though the six-shaft force sensor is usedas pressing force detection sensor, it is not limited to this type, andit is also possible to use any type of sensor if it can detect pressingforce in necessary directions.

Besides, though the moment MWG effecting about the center of gravity ofgrinder 25 is used for detection of the pressing force, if the grindersize is small so that the influence of inertia force is not so large, itis possible to directly detect the pressing force.

As decribed above, according to the second embodiment, the influence ofgravity and inertia can be eliminated with ease, and the correctdetection of pressing force applied from the machining tool to the workbecomes possible, further the response ability in force control and theworking accuracy can be much improved.

Moreover, there can be provided a force control robot which can carryout machining work with always pressing the machinig tool in the normaldirection to the work, and with keeping the posture of the machiningtool in a constant state against the work by changing the posturethereof without any teachings about the work shape even if it isinitially unknown.

Various modifications will become possible for those skilled in the artafter receiving the teachings of the present disclosure withoutdeparting from the scope thereof.

What is claimed is:
 1. A force control robot for detecting pressingforce to be applied from a machining tool attached at a robot arm to awork to be machined, and controlling the detected pressing force to be atarget pressing force, comprising:(a) detection means for detectingcounterforce to the pressing force applied to the machining tool; and(b) arithmetical operation means for obtaining moment about a center ofgravity of the machining tool by shifting a detection position at whichthe counterforce is detected by the detection means to a center ofgravity of the machining tool so that the detection point apparentlyoverlaps the center of gravity, for calculating the pressing forceapplied from the machining tool to the work based on the moment, and forcontrolling operation of the machining tool so that the pressing forceapplied to the work substantially coincides with the target pressingforce.
 2. The force control robot according to claim 1, wherein:thearithmetical operation means comprises a target pressing force outputsection which inputs target pressing force to be applied from themachining tool to the work from an external unit, then outputs a targetpressing force signal, a target position output section which inputs atarget position from an operation section, then outputs a targetposition signal, a target posture and position output section whichinputs target posture and position from an operation section, thenoutputs a target posture and position signal, a coordinate converterwhich inputs the target pressing force signal from the target pressingforce output section, the target position signal from the targetposition output section, and the target posture and position signal fromthe target posture and position output section, and outputs a targetangle, and a coordinate converter which obtains moment about the centerof gravity of the machining tool based on the data detected by thedetection means, and obtains a predetermined pressing force from themoment, then outputs the obtained pressing force.
 3. A force controlrobot for detecting pressing force to be applied from a machining toolattached at a robot arm to a work to be machined, and controlling thedetected pressing force to be a target pressing force, comprising:(a)detection means for detecting counterforce to the pressing force appliedto the machining tool; and (b) compensation means for obtaining momentabout a center of gravity of the machining tool based on data detectedby the detection means, then for obtaining counterforce to the pressingforce based on the moment about the center of gravity, so as tocompensate the data from the detection means, and for controllingoperation of the machining tool so that the pressing force applied tothe work substantially coincides with the target pressing force.
 4. Theforce control robot according to claim 3, whereinthe compensation meansis arithmetical operation means which shifts a detection position atwhich the counterforce is detected by the detection means to the centerof gravity of the machining tool, and obtains the moment about thecenter of gravity, so as to calculate the pressing force to be appliedfrom the machining tool to the work.
 5. The force control robotaccording to claim 3, wherein the compensation means includes acounterweight which is attached to the machining tool so that thedetection position coincides with the center of gravity of the machiningtool.
 6. A force control robot for detecting pressing force to beapplied from a machining tool attached at a robot arm to a work to bemachined, and controlling the detected pressing force to be a targetpressing force, comprising:(a) detection means for detectingcounterforce to the pressing force applied to the machining tool; (b)posture changing means for changing the posture of the machine tool sothat data detected by the detection means substantially coincides withthe target pressing force; and (c) driving means for pressing or movingthe machining tool along a fixing direction of the machining tool.
 7. Aforce control robot according to claim 6, whereina center of rotation ofthe machining tool for the posture control is set in the vicinity of thecontact point between the machining tool and the work.
 8. A forcecontrol robot for detecting pressing force to be applied from amachining tool attached at a robot arm to a work to be machined, andcontrolling the detected pressing force to be a target pressing force,comprising:(a) work shape memory means for memorizing a shape of thework from a movement orbit of the machining tool; (b) finished shapememory means of memorizing a finished shape of the work; and (c)arithmetical operation means for calculating target position and targetposture of the machining tool from the shapes memorized by the workshape memory means and the finished shape memory means, and forcontrolling operation of the machining tool so that the pressing forceapplied to the work substantially coincides with the target pressingforce, based on the target position and target posture of the machiningtool.